树莓派 Pico Clion开发 您所在的位置:网站首页 树莓派pico c 树莓派 Pico Clion开发

树莓派 Pico Clion开发

2023-09-26 02:55| 来源: 网络整理| 查看: 265

准备 交叉编译工具链 ARM GNU:下载页面

在这里插入图片描述

GNU工具链包括了 LD、GCC、G++等交叉编译连接工具

下载完成后下一步下一步安装就可以,注意一下安装路径。

树莓派Pico SDK下载: Pico SDK github项目首页

在这里插入图片描述 下载后解压,例如我的解压目录为D:\pico\pico-sdk 在这里插入图片描述

MinGW工具链(含Cmake、Make、GDB)在2021版本的Clion中默认已经安装,不需要我们再安装配置。

编译连接环境设置

创建C项目

在这里插入图片描述 创建新的编译工具链

在这里插入图片描述

命名一下新的工具链名称,我这里使用MinGW STM32。

选择C Complier 和 C++ Complier 为之前安装的ARM GNU工具链中的GCC和G++

在这里插入图片描述

Make与GDB保持不变,这里我们只是用Clion编译连接代码,不用Clion Debug所以GDB用不到。

选择 Cmake,修改 Cmake DEBUG配置,Toolchain选择之前创建的 MinGW STM32。

在这里插入图片描述

Generator选择 MinGW Makefile 在这里插入图片描述

配置PICO SDK的环境变量

在这里插入图片描述

变量名为 PICO_SDK_PATH,值为我们之前解压的SDK的绝对路径(我的是 D:\pico\pico-sdk)

在这里插入图片描述

完成后点击Apply并OK。

CMakeLists.txt

找到 pico-sdk 中pico_sdk_import.cmake 文件,复制到项目根目录 在这里插入图片描述 在这里插入图片描述

修改 CMakeLists.txt如下:

cmake_minimum_required(VERSION 3.21) # initialize the SDK based on PICO_SDK_PATH # note: this must happen before project() include(pico_sdk_import.cmake) project(picoled C CXX ASM) set(CMAKE_C_STANDARD 11) # Initialize the SDK pico_sdk_init() add_executable(picoled main.c) target_link_libraries(picoled pico_stdlib) # create map/bin/hex/uf2 file in addition to ELF. pico_add_extra_outputs(picoled) 在project 行前增加include(pico_sdk_import.cmake) 导入PICO的SDK。Project中增加 CXX ASM,这因为SDK需要使用C++和汇编。初始化SDKpico_sdk_init。可执行程序链接上pico_stdlib库。添加额外输出pico_add_extra_outputs,用于生成PICO的可执行文件,否则只有DEBUG的.efl文件。

完成后删除原有cmake-build-debug-stm32文件夹

在这里插入图片描述

重新加载。 在这里插入图片描述

重新加载后可以看见,项目目录中增加了pico-sdk,在CMake的提示消息中出现了一个警告,这里我们可以忽略该警告。

在这里插入图片描述

LED Demo

进入main.c 文件编写LED闪烁的程序如下:

#include "pico/stdlib.h" int main() { const uint LED_PIN = PICO_DEFAULT_LED_PIN; gpio_init(LED_PIN); gpio_set_dir(LED_PIN, GPIO_OUT); while (true){ gpio_put(LED_PIN, 1); sleep_ms(500); gpio_put(LED_PIN, 0); sleep_ms(500); } }

上面程序就是使用PICO上的LED等500ms闪烁一次,完成后我们点击编译。

在这里插入图片描述 可以在cmake-build-debug-stm32目录中找到该可执行文件picoled.uf2。

picoled.elf 需要DEBUG调试启动

在这里插入图片描述

运行

先按住 PICO Pi 的BOOTSEL按键不放,然后插上USB。

在这里插入图片描述 在PC上弹出一个127M大小新的磁盘。 在这里插入图片描述

打开该磁盘,将上一步编译可执行文件picoled.uf2 放入该磁盘中。

若程序正常,复制成功后该磁盘将会断开连接,Pico Pi将会自动重启执行我们的程序。

参考文献

[1]. 树莓派 pico中文站 . https://pico.org.cn/ [2]. github . raspberrypi . pico-sdk . https://github.com/raspberrypi/pico-sdk [3]. csdn . 人类高质量码农. . RaspberryPi Pico CLion开发环境配置 . https://blog.csdn.net/m0_53777801/article/details/112982045



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有